home *** CD-ROM | disk | FTP | other *** search
/ Amiga Plus 1999 #1 / Amiga Plus 1999 #1.iso / System-Boost / Sound / Eagleplayer2.00 / Developer / Include / misc / EaglePlayerRipper.i < prev    next >
Text File  |  1998-07-30  |  3KB  |  110 lines

  1. **
  2. **  $Filename: misc/EaglePlayerRipper.i
  3. **  $Release: 2.00 $
  4. **  $Revision: 1$
  5. **  $Date: 24/02/97$
  6. **
  7. ** Definitions and Macros for creating EaglePlayer Rippermodules
  8. **
  9. **    (C) Copyright 1993-97 by DEFECT
  10. **        All Rights Reserved
  11. **
  12. **
  13.  
  14.     IFND    EAGLEPLAYERRIPPER_I
  15. EAGLEPLAYERRIPPER_I    SET    1
  16.  
  17.  
  18.     IFND EXEC_PORTS_I
  19.         INCLUDE "exec/ports.i"
  20.     ENDC
  21.  
  22.     IFND EXEC_TYPES_I
  23.         INCLUDE "exec/types.i"
  24.     ENDC
  25.  
  26.     IFND UTILITY_TAGITEM_I
  27.         INCLUDE "utility/tagitem.i"
  28.     ENDC
  29.  
  30.  
  31. RIPPERVERSION EQU    1            ;Current Version of Ripper
  32.  
  33. *------------------------------ Rippertags --------------------------------*
  34. RPT_TagBase    EQU    TAG_USER+"ER"
  35.  
  36.  
  37.     ENUM    RPT_TagBase        ;EaglePlayer-TagBase
  38.  
  39.     EITEM    RPT_Formatname
  40.     EITEM    RPT_Ripp1        ;Ptr to Ripp Pass1
  41.                     * Input: a0=Adr (start of memory)
  42.                     *     d0=Size (size of memory)
  43.                     *     a1=current adr
  44.                     *     d1=(a1.l)
  45.                     * Output:d0=Error oder NULL
  46.                     *     d1=Size
  47.                     *     a0=Startadr (data)
  48.             *#####################################################
  49.             *Attention!!! Don't change th following registers:
  50.             *      d3-d7/a3-a6 !!!!!!!!!!!!!!!!!!!!!!!
  51.             *
  52.             *#####################################################
  53.     EITEM    RPT_Ripp2        ;Ptr to Ripp Pass2
  54.     EITEM    RPT_Ripp3        ;Ptr to Ripp Pass3
  55.     EITEM    RPT_ExtRipp        ;for Samplesearch (not implemented)
  56.  
  57.     EITEM    RPT_Version        ;Version of Ripper
  58.     EITEM    RPT_RequestRipper    ;Requested Version of Eagleripper
  59.     EITEM    RPT_EagleBase
  60.     EITEM    RPT_Creator
  61.     EITEM    RPT_Flags
  62.     EITEM    RPT_Next        * Ptr to next Rippertaglist
  63.     EITEM    RPT_GetModulename    * Output: a0=Ptr to name
  64.     EITEM    RPT_Playername        * needed Player (in EP:Eagleplayers)
  65.     EITEM    RPT_Prefix        * Prefix for Playerbatch
  66.  
  67.     ;end of Ripperdefinition
  68.  
  69.  
  70.  
  71.  
  72.  
  73. *-------------------------------- Ripperheader -------------------------------*
  74. RIPPERHEADER MACRO
  75.     moveq    #-1,d0                ; this should return an error
  76.     rts                    ; in case someone tried to
  77.                         ; run it
  78.     dc.l    \1                ; Ptr to Taglist
  79.     dc.b    "EP_RIPPERMODULE",0        ; identifier
  80.     ENDM
  81.  
  82.  
  83.     ENDC    ; EAGLEPLAYERRIPPER_I
  84.  
  85.  
  86.  
  87. *------------------- Ripperstruct (returned bei EUT_Ripp) --------------------*
  88.     STRUCTURE EagleRipper,0
  89.     APTR    ERPSS_Position            *while ripping
  90.     APTR    ERPSS_MemStart            *Start ripping
  91.     ULONG    ERPSS_MemSize            *Size ripping
  92.     APTR    ERPSS_Segment            *Start of first Segment
  93.     APTR    ERPSS_CurrentSegmentPosition
  94.     APTR    ERPSS_CurrentSegmentSize
  95.     APTR    ERPSS_Tags
  96.     APTR    ERPSS_Formatname
  97.     APTR    ERPSS_Modulename
  98.     APTR    ERPSS_Comment
  99.     APTR    ERPSS_FilePtr            *current Adr
  100.     LONG    ERPSS_FileSize
  101.     LONG    ERPSS_FileNr
  102.     LONG    ERPSS_EngineNr            *filled by Eagleplayer
  103.     LONG    ERPSS_FormatId            *private for Ripper
  104.     LONG    ERPSS_Ripperstruct        *private for Ripper
  105.     LONG    ERPSS_Private1            *private for Ripper
  106.     LONG    ERPSS_Private2            *private for Ripper
  107.     LONG    ERPSS_Private3            *private for Ripper
  108.     LABEL    ERPSS_SizeOf            *to be extended!
  109.  
  110.